/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package com.clinicariobamba.Controladores;

import com.clinicariobamba.ReglasNegocio.Clases.Composicion;
import com.clinicariobamba.ReglasNegocio.Funciones.FuncionesComposicion;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import javax.faces.context.FacesContext;

/**
 *
 * @author Gis
 */
@ManagedBean
@ViewScoped
public class ControladorComposicion implements Serializable{

    private Composicion composicion;
    private ArrayList<Composicion> lstComposicion;

    public ControladorComposicion() {
        this.composicion = new Composicion();
    }

    public Composicion getComposicion() {
        return composicion;
    }

    public void setComposicion(Composicion composicion) {
        this.composicion = composicion;
    }

    public ArrayList<Composicion> getLstComposicion(int id_hce) {
        CargarListComposicion(id_hce);
        return lstComposicion;
    }

    public void setLstComposicion(ArrayList<Composicion> lstComposicion) {
        this.lstComposicion = lstComposicion;
    }

    public void CargarListComposicion(int codigoHC) {
        try {
            lstComposicion = FuncionesComposicion.obtenerXLCodigoHCE(codigoHC);
        } catch (Exception e) {
            FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_ERROR,
                    "Alerta!!", e.getMessage());
            FacesContext.getCurrentInstance().addMessage(null, message);
            
        }
    }

    public void insertarComposicion() {
        try {
            if (FuncionesComposicion.insertar(composicion)) {
                FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO,
                        "Información", "Datos Insertados");
                FacesContext.getCurrentInstance().addMessage(null, message);
                //DefaultRequestContext.getCurrentInstance().execute("wdlgNuevoCurso.hide()");
                composicion = new Composicion();
            } else {
                FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_ERROR,
                        "Alerta!!", "Error al eliminar");
                FacesContext.getCurrentInstance().addMessage(null, message);
            }
        } catch (Exception e) {            
            FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_ERROR,
                    "Alerta!!", e.getMessage());
            FacesContext.getCurrentInstance().addMessage(null, message);
        }
    }
}
